Information technology infrastructure elements such as computers and mobile telephones may be configured to establish communication sessions with one another in accordance with the Session Initiation Protocol (SIP), described in Internet Engineering Task Force (IETF) Request for Comments (RFC) 3261, “SIP: Session Initiation Protocol,” June 2002, which is incorporated by reference herein. SIP is an application-layer signaling protocol used for establishing communication sessions in an Internet Protocol (IP) network. It can be used to create, modify and terminate sessions, which may include, for example, IP telephone calls or collaborative multimedia conferences. These sessions make possible a wide array of innovative services, such as voice-enriched e-commerce, web page click-to-dial, instant messaging with buddy lists, and IP-PBX telephony services.
A session may be considered an exchange of data between a group of two or more participants, also referred to as users. The users are associated with endpoints that are referred to as user agents. SIP allows user agents to discover one another and to agree on a characterization of a session they would like to share. Sessions are created using SIP invite messages that carry session descriptions that allow the users to agree on a set of compatible media types. SIP also enables the creation of an infrastructure of network hosts, called proxy servers, to which user agents can send invite messages and other other requests. For example, SIP provides a registration function that allows users to upload their current locations for use by proxy servers. SIP works independently of underlying transport protocols and without dependency on the type of session that is being established.
One drawback of SIP and other similar messaging protocols is that internal implementations of proxy servers within infrastructure products may utilize proprietary queuing mechanisms. Thus, infrastructure product vendors may provide implementations of SIP in a variety of different forms. This can create difficulties for product customers that attempt to integrate their own third-party applications with one or more of the vendor-specific SIP implementations.
Accordingly, integration of products that include vendor-specific SIP implementations is particularly challenging under conventional practice, and can lead to excessive product integration costs. The situation is further complicated by the fact that an increasing number of enterprises are migrating portions of their information technology infrastructure to cloud service providers.